<?php // $Id: email.php,v 1.1 2006/01/10 18:46:24 alex Exp $
/**
 * Класс-контейнер данных в формате email
 *
 */
class sharpobj_data_item_phone extends sharpobj_data_item
{
    protected $type = 'phone';
    /**
     * Проверять ли входные данные на скалярность
     */
    protected $check_scalat = true;
    /**
     * Принудительно приводить к нужному типу данных
     */
    protected $set_vartype = 'string';
    protected  function viewMiscFilter($data,$opt=null)
    {
        // Преобразуем входящий элемент
        // Для использования, функция должна быть переопределена в дочернем классе
        // Здесь не допускается выполнять никаких значимых преобразований, могущих нарушить
        // исходное значение данных, так как преобразование выполняется без предупреждения
        // Выкусываем лишние проблеы и прочерки
        return str_replace('-','',str_replace(' ','',$data));
    }
    protected  function viewMiscCheckFormatError($data,$opt=null)
    {   // Пользовательский фильтр формата данных
        // Если ошибка - возвращаем true

        $pattern='(\+[0-9]{1}\([0-9]{2,3}\)[0-9]{3,7})(\*\1|\**)';
        if (empty($data) or ereg($pattern,$data))
        {
            return false;
        }else 
        {
            $this->conditionError('format');
            return true;
        }
    }
}
?>